package com.diver.flinkdemo.readervo;

import com.alibaba.fastjson.JSONObject;
import lombok.Data;

/**
 * Created with IntelliJ IDEA.
 *
 * @Description: 下发通用模板定义
 * @Author: zhangB
 * @Date: 2023/3/2 14:13
 */
@Data
public class CommonTemplateDefinition {

    /**
     * 任务标记
     */
    private String tag;

    /**
     * 设备deviceId/学生证imei
     */
    private String deviceId;

    /**
     * 设备名称
     */
    private String deviceName;

    /**
     * 任务名称
     */
    private String name;

    /**
     * 指令
     */
    private String instruction;

    /**
     * 指令参数
     */
    private JSONObject instruParams;

    /**
     * 下发网络类型: http/tcp/ws/mqtt，默认为http
     */
    private String sendType;

    /**
     * 重试次数，默认重试次数为0，最大重试次数为3;
     */
    private int retryCount;

//    /**
//     * 下发指令回调状态字段名;
//     */
//    private String callbackStatus;

    /**
     * 下发指令结果通知topic（kafka）
     */
    private String notifyTopic;


    public static void setParams(CommonTemplateDefinition template, TemplateParamsDefinition param) {
        template.setName(param.getName());
        template.setInstruction(param.getInstruction());
        template.setInstruParams(param.getInstruParams());
        template.setSendType(param.getSendType());
        template.setRetryCount(param.getRetryCount());
        template.setNotifyTopic(param.getNotifyTopic());
    }


}
